package com.example.wszb;

import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;

import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class RegActivity extends AppCompatActivity {    //注册页面

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_reg);

        ActionBar actionBar = getSupportActionBar();
        if(actionBar!=null)
            actionBar.hide();


        Button reg = (Button) findViewById(R.id.btn_reg);//登录Button实例化。
        reg.setOnClickListener(new View.OnClickListener() {//设置点击登录的操作
            @Override
            public void onClick(View v) {
                //获取账号、密码输入文本并转换为字符类型，然后调用Data中的Login登录方法，传入账号、密码参数，返回一个布尔代数作判断。
                String account = ((EditText) findViewById(R.id.reg_account)).getText().toString();
                String password = ((EditText) findViewById(R.id.reg_password)).getText().toString();
                DataLogin user = new DataLogin(account, password);   //将账号密码放在DataLogin类中
                //新开线程将数据存入数据库
                DBHelp dbhelp = new DBHelp();
                new Thread(new Runnable() {
                    @Override
                    public void run() {
                        boolean t = dbhelp.toRegAccount(user);//注册账号，成功返回true, 失败返回false
                        Message message = handler.obtainMessage();
                        message.obj = t;
                        handler.sendMessage(message);   // 发消息通知主线程更新UI
                    }
                }).start();
            }
        });
    }

    @SuppressLint("HandlerLeak")
    private Handler handler = new Handler(){
        @Override
        public void handleMessage(Message msg) {
            if( (boolean) msg.obj ){   //注册成功
                Toast.makeText(RegActivity.this,"注册成功！",Toast.LENGTH_SHORT).show();//生成对象，同时调用show方法显示。
                Intent intent_Main = new Intent(RegActivity.this,LoginActivity.class);//Intent转换，实例化intent
                startActivity(intent_Main);//跳转到登录页面LoginActivity
            } else{ //注册失败
                Toast.makeText(RegActivity.this,"注册失败！账号已存在",Toast.LENGTH_SHORT).show();//生成对象，同时调用show方法显示。
            }
        }
    };
}